// 引入列表接口
import {specsList,specsCount} from '../../../request/api'

const state={
    specslist:[],
    size:2,// 页面显示的条数
    page:1, //页码初始值
    count:0  //总数
}

const getters={
    // 返回管理员列表
    getSpecsList(state){
        return state.specslist
        
    },
    
    // 返回总数
    getCount(state){
        return state.count
    },
    // 返回条数
    getSize(state){
        return state.size
    }
}

const mutations={
    REQ_SPECSLIST(state,payload){
        state.specslist=payload
        // console.log(state.specslist);
    },
    REQ_GETCOUNT(state,payload){
        state.count=payload
    },
    // 修改页码
    CHANGE_PAGE(state,payload){
        state.page=payload
    }
}

const actions={
    // 获取规格列表
    getSpecsListAction(context){
        specsList({
            size:context.state.size,
            page:context.state.page
        }).then(res=>{
            if(res.code==200){
                context.commit('REQ_SPECSLIST',res.list)
                if(context.state.page != 1 && res.list.length==0){
                    context.dispatch('changePageAction'),context.state.page
                }
            }
        })
    },
    // 获取总数
    getCountAction({commit}){
        specsCount().then(res=>{
            // console.log(res,'总数');
            if(res.code==200){
                commit('REQ_GETCOUNT',res.list[0].total)
            }
        })
    },
    // 切换页码
    changePageAction(context,payload){
        // 当用户切换页码时  修改page
        context.commit('CHANGE_PAGE',payload)
        // 重新调用列表
        context.dispatch('getSpecsListAction')
    }
}

export default{
    state,
    getters,
    mutations,
    actions,
    // 命名空间
    namespaced:true
}